﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using JSC.Portal.Entities.Interfaces;

namespace JSC.Portal.Entities
{
    public partial class PortalSite : DescriptiveEntity, ITracked, IValid
    {
        public PortalSite()
        {
            LicensedModules = new List<SiteLicense>();
            PortalPages = new List<PortalPage>();
        }

        public string Url
        {
            get;
            set;
        }

        public string DefaultLanguage
        {
            get;
            set;
        }

        public Template DefaultTemplate
        {
            get;
            set;
        }

        public string MetaKeywords
        {
            get;
            set;
        }

        public string MetaDescription
        {
            get;
            set;
        }

        public string WebmasterMail
        {
            get;
            set;
        }

        public IList<SiteLicense> LicensedModules
        {
            get;
            set;
        }

        public IList<PortalPage> PortalPages
        {
            get;
            set;
        }

        #region ITrackedEntity Members

        public PortalUser CreatedByUser
        {
            get;
            set;
        }

        public PortalUser ModifiedByUser
        {
            get;
            set;
        }

        public DateTime CreatedOn
        {
            get;
            set;
        }

        public DateTime? ModifiedOn
        {
            get;
            set;
        }

        #endregion

        #region IValid Members

        public DateTime ValidFrom
        {
            get;
            set;
        }

        public DateTime? ValidTill
        {
            get;
            set;
        }

        #endregion
    }
}
